<?php
class Delivery_Model_DbTable_Horarios
	extends Delivery_Model_DbTable_Abstract

{
	protected $_name = 'horarios';
	protected $_primary = 'idHorario';
	
	public function insert( $horario ){
		
		return parent::insert(		
			$this->_fecha( $this->_getData( $horario ), true, true)
		);	
	}
	
	public function update( $horario ){
		
		return parent::update(
			$this->_fecha( $this->_getData( $horario ), false, true),
			array('idHorario = ?' => $horario->idHorario)		
		);
	}
	
	public function delete ( $horario )
	{
		return parent::delete(array('idHorario = ?' => $horario->idHorario));
	}
	
	
	
	public function getById( $idHorario ){
		
		return 
			$this->_db->fetchRow(
				$this->select()->where('idHorario = ?', $idHorario, Zend_Db::INT_TYPE)
			);
	}
	
	public function getByNegocio( $idNegocio ){
		$select = $this->select()
					->order('dia')
					->order('desde');
			
		if ( is_int($idNegocio) ){
			$select->where('idNegocio = ?', $idNegocio, Zend_Db::INT_TYPE);
		} else {
			$select->where('idNegocio IN (?)', $idNegocio, Zend_Db::INT_TYPE);
		}	
			
		return $this->_db->fetchAll($select);	
	}
	
	
	protected function _getData( $horario )
	{
		
		return array (
			'idNegocio'	=> $horario->idNegocio,
   			'dia'		=> $horario->dia,	   			
   			'desde'		=> $horario->desde,
   			'hasta'		=> $horario->hasta
   		);
	} 
	
	
}